package com.kingyun.gpsinspection.purificationservice.dao.mapper.som;


import com.kingyun.gpsinspection.purificationservice.facade.model.som.ElectronTemplateValue;

import java.util.List;

public interface ElectronTemplateValueMapper {
    /**
     * 物理删除
     *
     * @param etValueId
     * @return
     */
    int deleteByPrimaryKey(String etValueId);

    /**
     * 根据 ETIId批量逻辑删除
     *
     * @param list
     * @return
     */
    int deleteETIIdList(List<String> list);

    /**
     * 添加
     *
     * @param record
     * @return
     */
    int insert(ElectronTemplateValue record);

    /**
     * 批量新增
     *
     * @param list
     * @return
     */
    int insertList(List<ElectronTemplateValue> list);

    /**
     * 非空添加
     *
     * @param record
     * @return
     */
    int insertSelective(ElectronTemplateValue record);

    /**
     * 根据ID查询
     *
     * @param etValueId
     * @return
     */
    ElectronTemplateValue selectByPrimaryKey(String etValueId);

    /**
     * 非空修改
     *
     * @param record
     * @return
     */
    int updateByPrimaryKeySelective(ElectronTemplateValue record);

    /**
     * 修改
     *
     * @param record
     * @return
     */
    int updateByPrimaryKey(ElectronTemplateValue record);

    /**
     * 根据条件查询集合
     *
     * @param record
     * @return
     */
    List<ElectronTemplateValue> selectByParamList(ElectronTemplateValue record);

    /**
     * 电子巡检数据组装查询。
     *
     * @param record
     * @return
     */
    List<ElectronTemplateValue> selectByValueList(ElectronTemplateValue record);

    /**
     * 查询当前值去重次数
     *
     * @param record
     * @return
     */
    List<ElectronTemplateValue> selectByNumberList(ElectronTemplateValue record);

    /**
     * 判断当前日期当前小时是否执行巡检查询
     *
     * @param record
     * @return
     */
    int selectByParamCount(ElectronTemplateValue record);

    /**
     * 根据模版ID，开始日期时间，结束日期时间，查询信息
     *
     * @param record
     * @return
     */
    int selectDateTimeCount(ElectronTemplateValue record);

    /**
     * 查询当前日期最后记录次数
     *
     * @param record
     * @return
     */
    Integer selectByNumber(ElectronTemplateValue record);
}